package com.yeyuanqi.hottop.untils;

import com.yeyuanqi.hottop.vo.NameAndValueVO;
import org.springframework.stereotype.Component;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;

/**
 * 封装了一个用于生成每日热搜top所需数据格式的方法
 * @author yeyuanqi
 * @date 2022/01/19
 **/
@Component
public class DailyAndMonthlyTopDataUtil {

    /**
     * 将redis获取的每日热搜top数据转换成list<DailyAndMonthlyHotVO>类型
     * @param dailyTopData redis返回的too数据格式
     * @return 返回一个List<DailyAndMonthlyHotVO>列表
     */
    public List<NameAndValueVO> getdailyTopDatas(Map<Object, Double> dailyTopData){
        List<NameAndValueVO>  dailyTopList= new ArrayList<>();
        //   entrySet返回此映射中包含的映射的 Set 视图
        for (Map.Entry<Object, Double> dailytop : dailyTopData.entrySet()){
            NameAndValueVO data =new NameAndValueVO();
            data.setName(String.valueOf(dailytop.getKey()));
            data.setValue(dailytop.getValue().intValue());
            dailyTopList.add(data);
        }
        return dailyTopList;
    }
}
